String.prototype.startsWith = function(str){return (this.match("^"+str)==str)}
String.prototype.trim = function(){return (this.replace(/^[\s\xA0]+/, "").replace(/[\s\xA0]+$/, ""))}
$(document).ready(function(){
$.ajaxSetup({
error:function(x,e){
if(x.status==0){
alert('You are offline!!\n Please Check Your Network.');
}else if(x.status==404){
alert('Requested URL not found.');
}else if(x.status==500){
alert('Internel Server Error.');
}else if(e=='parsererror'){
alert('Error.\nParsing JSON Request failed.');
}else if(e=='timeout'){
alert('Request Time out.');
}else {
alert('Unknow Error.\n'+x.responseText);
}
}
});
$('#service').change(function() {
/*
0_llamada4_T_1
[0]=> con historico
[1]=> nombre de la funcion js a llamar
[2]=> para los incrementales, el tipo (ALL, NUEVO, ACTUALIZACION, BORRAR)
[3]=> algunos servicios requieren una fecha
*/
if(this.value!=""){
let valor = this.value;
//historico_funcion_tipo_date
let valores = valor.split('_');
if(valores[3]=="1"){
$("#zona_date").show();
$("#frm_service #date_required").val("1");
}else{
$("#zona_date #date").val("");
$("#zona_date").hide();
$("#frm_service #date_required").val("0");
}
//asigna historico
if(valores[0]=="1"){
$("#frm_service #historic").val("true");
}else{
$("#frm_service #historic").val("false");
}
//asigna funcion para ejecutar
$("#frm_service #function").val(valores[1]);
//asigna tipo
$("#frm_service #type_info").val(valores[2]);
}
});
});
//funcion que hace llamada ajax de forma asincrona
function fAjaxCaller(destino, path, searchQuery){
$(destino).empty().html('
');
searchQuery = searchQuery + '&p='+Math.random();
$(destino).load(path,searchQuery,function (responseText, textStatus, x)
{
if( XMLHttpRequest.status == '200' )
{
}
});
}
//funcion que hace llamada ajax de forma asincrona, ademas de pasar una funcion como callback
function fAjaxCallerCallback(destino, path, searchQuery, callback){
$(destino).empty().html('
');
if(searchQuery==""){
searchQuery = searchQuery + '?p='+Math.random();
}else{
searchQuery = searchQuery + '&p='+Math.random();
}
$(destino).load(path,searchQuery,callback);
}
//funcion que hace llamada ajax de forma sincrona
function ajaxAsync(action){
var retorno = "";
action = action + '&p='+Math.random();
$.ajax({
url: action,
async: false,
success: function(html){
retorno = html;
}
})
return retorno;
}
//funcion que hace llamada ajax de forma sincrona, ademas de indicarle donde se mostrara el resultado de la llamada
function ajaxSyncDisplay(action,id){
action = action + '&p='+Math.random();
$.ajax({
url: action,
async: false,
success: function(data){
$(id).html(data);
}
})
}